home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 2 / Amiga Tools 2.iso / tex / macros / source / contrib / ucthesis / uct10.clo next >
Text File  |  1995-03-09  |  18KB  |  428 lines

  1. % UCTHESIS DOCUMENT CLASS OPTION-- uct10.clo 11/3/94
  2. %    for LaTeX version 2e
  3.  
  4. %  ****************************************
  5. %  *               FONTS                  *
  6. %  ****************************************
  7. %
  8.  
  9. \lineskip 1pt            % \lineskip is 1pt for all font sizes.
  10. \normallineskip 1pt
  11. \def\baselinestretch{1.37}
  12.  
  13. % All of the font selection commands have been revised to conform with the
  14. % LaTeX2e font selection commands (BBF 10/31/94).
  15. % Each size-changing command \SIZE executes the command
  16. %        \fontsize\@FONTSIZE{BASELINESKIP}\selectfont
  17. % where:
  18. %  \@FONTSIZE     = Name of font-size command.  The currently available
  19. %                  (preloaded) font sizes are: \@vpt (5pt), \@vipt (6pt),
  20. %                  \@viipt (etc.), \@viiipt, \@ixpt, \@xpt, \@xipt, \@xiipt,
  21. %                  \@xivpt, \@xviipt, \@xxpt, \@xxvpt.  These are defined
  22. %           in ltfss.dtx.
  23. %
  24. %   BASELINESKIP = Normal value of \baselineskip for that size. (Actual 
  25. %                  value will be \baselinestretch * BASELINESKIP.)
  26. %
  27. % For reasons of efficiency that needn't concern the designer, the
  28. % document style defines \@normalsize instead of \normalsize .  This
  29. % is done only for \normalsize, not for any other size-changing
  30. % commands.
  31.  
  32. \renewcommand{\normalsize}{\fontsize\@xpt{12}\selectfont%
  33. \abovedisplayskip 10\p@ plus2\p@ minus5\p@
  34. \belowdisplayskip \abovedisplayskip
  35. \abovedisplayshortskip  \z@ plus3\p@   
  36. \belowdisplayshortskip  6\p@ plus3\p@ minus3\p@
  37. \let\@listi\@listI}   % Setting of \@listi added 9 Jun 87
  38.  
  39. \newcommand{\small}{\fontsize\@ixpt{11}\selectfont%
  40. \abovedisplayskip 8.5\p@ plus3\p@ minus4\p@
  41. \belowdisplayskip \abovedisplayskip
  42. \abovedisplayshortskip \z@ plus2\p@
  43. \belowdisplayshortskip 4\p@ plus2\p@ minus2\p@
  44. \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87
  45. \topsep 4\p@ plus2\p@ minus2\p@\parsep 2\p@ plus\p@ minus\p@
  46. \itemsep \parsep}}
  47.  
  48. \newcommand{\footnotesize}{\fontsize\@viiipt{9.5}\selectfont%
  49. \abovedisplayskip 6\p@ plus2\p@ minus4\p@
  50. \belowdisplayskip \abovedisplayskip
  51. \abovedisplayshortskip \z@ plus\p@
  52. \belowdisplayshortskip 3\p@ plus\p@ minus2\p@
  53. \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87
  54. \topsep 3\p@ plus\p@ minus\p@\parsep 2\p@ plus\p@ minus\p@
  55. \itemsep \parsep}}
  56.  
  57. \newcommand{\scriptsize}{\fontsize\@viipt{8pt}\selectfont}
  58. \newcommand{\tiny}{\fontsize\@vpt{6pt}\selectfont}
  59. \newcommand{\large}{\fontsize\@xiipt{14pt}\selectfont}
  60. \newcommand{\Large}{\fontsize\@xivpt{18pt}\selectfont}
  61. \newcommand{\LARGE}{\fontsize\@xviipt{22pt}\selectfont}
  62. \newcommand{\huge}{\fontsize\@xxpt{25pt}\selectfont}
  63. \newcommand{\Huge}{\fontsize\@xxvpt{30pt}\selectfont}
  64.  
  65. % The shortform font selection commands are not defined in LaTeX2e.  This
  66. % defines them so that they do non-orthogonal font selection, which is 
  67. % useful if you are in the middle of converting a document from 2.09.
  68. % These commands are no longer used internally in this class. (BBF 10/31/94)
  69.  
  70. \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
  71. \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
  72. \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
  73. \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
  74. \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
  75. \newcommand{\sl}{\slshape}
  76. \newcommand{\sc}{\scshape}
  77.  
  78. \normalsize  % Choose the normalsize font.
  79.  
  80. %  ****************************************
  81. %  *            PAGE LAYOUT               *
  82. %  ****************************************
  83. %
  84. % All margin dimensions measured from a point one inch from top and side
  85. % of page.  
  86.  
  87. %% UCTHESIS style is not intended to be used two-sided because the
  88. %% University of California style requirements explicitly specify 
  89. %% single-sided printing.   So the two-sided settings are meaningless.
  90.  
  91. % SIDE MARGINS:
  92. \if@twoside               % Values for two-sided printing:
  93.    \oddsidemargin 0.5in   %   Left margin on odd-numbered pages.
  94.    \evensidemargin 0.0in  %   Left margin on even-numbered pages.
  95.    \marginparwidth 0pt    %   Width of marginal notes.
  96. \else                     % Values for one-sided printing:
  97.    \oddsidemargin 0.5in   %   Note that \oddsidemargin = \evensidemargin
  98.    \evensidemargin 0.5in
  99.    \marginparwidth 0pt
  100. \fi
  101. \marginparsep 11pt        % Horizontal space between outer margin and 
  102.                           % marginal note
  103.  
  104.  
  105. % VERTICAL SPACING:        
  106.                          % Top of page:
  107. \topmargin 0.0in         %    Nominal distance from top of page to top
  108.                          %    of box containing running head.
  109. \headheight 12pt         %    Height of box containing running head.
  110. \headsep 25pt            %    Space between running head and text.
  111. \topskip = 10pt          %    '\baselineskip' for first line of page.
  112.                          % Bottom of page:
  113. \footskip 30pt           %    Distance from baseline of box containing
  114.                          %    foot to baseline of last line of text.
  115.  
  116.  
  117. % DIMENSION OF TEXT:
  118. % 24 Jun 86: changed to explicitly compute \textheight to avoid
  119. % roundoff.  The value of the multiplier was calculated as the floor
  120. % of the old \textheight minus \topskip, divided by \baselineskip for
  121. % \normalsize.  The old value of \textheight was 528pt.  \textheight
  122. % is the height of text (including footnotes and figures, excluding
  123. % running head and foot).
  124.  
  125. \textheight = 37\baselineskip
  126. \advance\textheight by \topskip
  127. \textwidth 6.0truein     % Width of text line.
  128.                          % For two-column mode: 
  129. \columnsep 10pt          %    Space between columns 
  130. \columnseprule 0pt       %    Width of rule between columns.
  131.  
  132. % A \raggedbottom command causes 'ragged bottom' pages: pages set to
  133. % natural height instead of being stretched to exactly \textheight.
  134.  
  135. % FOOTNOTES:
  136.  
  137. \footnotesep 6.65pt   % Height of strut placed at the beginning of every
  138.                       % footnote = height of normal \footnotesize strut,
  139.                       % so no extra space between footnotes.
  140.  
  141. \skip\footins 9pt plus 4pt minus 2pt  % Space between last line of text
  142.                                       % and top of first footnote.
  143.  
  144. % FLOATS: (a float is something like a figure or table)
  145. %
  146. %  FOR FLOATS ON A TEXT PAGE:
  147. %
  148. %    ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE:
  149. \floatsep 12pt plus 2pt minus 2pt        % Space between adjacent floats
  150.                                          % moved to top or bottom of
  151.                                          % text page.
  152. \textfloatsep 20pt plus 2pt minus 4pt    % Space between main text and
  153.                                          % floats at top or bottom of
  154.                                          % page.
  155. \intextsep 12pt plus 2pt minus 2pt       % Space between in-text figures
  156.                                          % and text.
  157. %    TWO-COLUMN FLOATS IN TWO-COLUMN MODE:
  158. \dblfloatsep 12pt plus 2pt minus 2pt     % Same as \floatsep for
  159.                                          % double-column figures in
  160.                                          % two-column mode.
  161. \dbltextfloatsep 20pt plus 2pt minus 4pt % \textfloatsep for
  162.                                          % double-column  floats.
  163.  
  164. %  FOR FLOATS ON A SEPARATE FLOAT PAGE OR COLUMN:
  165. %    ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE:
  166. \@fptop 0pt plus 1fil    % Stretch at top of float page/column. (Must
  167.                          % be 0pt plus ...)
  168. \@fpsep 8pt plus 2fil    % Space between floats on float page/column.
  169. \@fpbot 0pt plus 1fil    % Stretch at bottom of float page/column. (Must
  170.                          % be 0pt plus ... )
  171.  
  172. %   DOUBLE-COLUMN FLOATS IN TWO-COLUMN MODE.
  173. \@dblfptop 0pt plus 1fil % Stretch at top of float page. (Must be 0pt
  174.                          % plus ...)
  175. \@dblfpsep 8pt plus 2fil % Space between floats on float page.
  176. \@dblfpbot 0pt plus 1fil % Stretch at bottom of float page. (Must be
  177.                          % 0pt plus ... )
  178. % MARGINAL NOTES:
  179. %
  180. \marginparpush 5pt       % Minimum vertical separation between two
  181.                          % marginal notes.
  182.  
  183.  
  184. %  ****************************************
  185. %  *           PARAGRAPHING               *
  186. %  ****************************************
  187. %
  188. \parskip 0pt plus 1pt              % Extra vertical space between
  189.                                    % paragraphs.
  190. \parindent 4em                     % Width of paragraph indentation.
  191. %\topsep 8pt plus 2pt minus 4pt    % Extra vertical space, in addition
  192.                                    % to \parskip, added above and below
  193.                                    % list and paragraphing environments.
  194. \partopsep 2pt plus 1pt minus 1pt  % Extra vertical space, in addition
  195.                                    % to \parskip and \topsep, added when
  196.                                    % user leaves blank line before
  197.                                    % environment.
  198. %\itemsep 4pt plus 2pt minus 1pt   % Extra vertical space, in addition
  199.                                    % to \parskip, added between list
  200.                                    % items.
  201. % See \@listI for values of \topsep and \itemsep
  202. % (Change made 9 Jun 87)
  203.  
  204. % The following page-breaking penalties are defined
  205.  
  206. \@lowpenalty   51      % Produced by \nopagebreak[1] or \nolinebreak[1]
  207. \@medpenalty  151      % Produced by \nopagebreak[2] or \nolinebreak[2]
  208. \@highpenalty 301      % Produced by \nopagebreak[3] or \nolinebreak[3]
  209.  
  210. \@beginparpenalty -\@lowpenalty    % Before a list or paragraph
  211.                                    % environment.
  212. \@endparpenalty   -\@lowpenalty    % After a list or paragraph
  213.                                    % environment.
  214. \@itempenalty     -\@lowpenalty    % Between list items.
  215.  
  216. % \clubpenalty         % 'Club line'  at bottom of page.
  217. % \widowpenalty        % 'Widow line' at top of page.
  218. % \displaywidowpenalty % Math display widow line.
  219. % \predisplaypenalty   % Breaking before a math display.
  220. % \postdisplaypenalty  % Breaking after a math display.
  221. % \interlinepenalty    % Breaking at a line within a paragraph.
  222. % \brokenpenalty       % Breaking after a hyphenated line.
  223.  
  224.  
  225. %    ****************************************
  226. %    *        CHAPTERS AND SECTIONS         *
  227. %    ****************************************
  228. %
  229. %
  230.  
  231. % Definition of \part moved to report.doc  on 19 Jan 88
  232.  
  233. % \@makechapterhead {TEXT} : Makes the heading for the \chapter command.
  234. %
  235.  
  236. \def\@makechapterhead#1{%           % Heading for \chapter command
  237.   \vspace*{50\p@}%                  % Space at top of text page.
  238.   {\parindent \z@\raggedright 
  239.     \ifnum \c@secnumdepth >\m@ne    % IF secnumdepth > -1 THEN
  240.      \huge\bfseries \@chapapp{} \thechapter % Print '\chaptername' and number.
  241.     \par 
  242.     \vskip 20\p@ \fi                % Space between number and title.
  243.     \Huge \bfseries                       % Title.
  244.     #1\par 
  245.     \nobreak                        % TeX penalty to prevent page break.
  246.     \vskip 40\p@                    % Space between title and text.
  247.   }}
  248.  
  249. % \@makeschapterhead {TEXT} : Makes the heading for the \chapter*
  250. % command.
  251. %
  252.  
  253. \def\@makeschapterhead#1{%          % Heading for \chapter* command
  254.   \vspace*{50\p@}%                  % Space at top of page.
  255.   {\parindent \z@ \raggedright 
  256.     \Huge \bfseries                       % Title.
  257.     #1\par 
  258.     \nobreak                        % TeX penalty to prevent page break.
  259.     \vskip 40\p@                    % Space between title and text.
  260.   }}
  261.  
  262. % \secdef{UNSTARCMDS}{STARCMDS} :
  263. %    When defining a \chapter or \section command without using
  264. %    \@startsection, you can use \secdef as follows:
  265. %       \def\chapter { ... \secdef \CMDA \CMDB }
  266. %       \def\CMDA    [#1]#2{ ... }  % Command to define
  267. %                                   % \chapter[...]{...}
  268. %       \def\CMDB    #1{ ... }      % Command to define
  269. %                                   % \chapter*{...}
  270.  
  271. \def\chapter{\clearpage      % Starts new page.
  272.    \thispagestyle{plain}%    % Page style of chapter page is 'plain'
  273.    \global\@topnum\z@        % Prevents figures from going
  274.                              % at top of page.
  275.    \@afterindenttrue         % Suppresses indent in first paragraph.
  276.    \secdef\@chapter\@schapter}   % Change to \@afterindentfase for no indent.
  277.  
  278. \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
  279.         \refstepcounter{chapter}%
  280.         \typeout{\@chapapp\space\thechapter.}%
  281.         \addcontentsline{toc}{chapter}{\protect
  282.         \numberline{\thechapter}#1}\else
  283.       \addcontentsline{toc}{chapter}{#1}\fi
  284.    \chaptermark{#1}%
  285.    \addtocontents{lof}%
  286.        {\protect\addvspace{10\p@}} % Adds between-chapter space
  287.    \addtocontents{lot}%
  288.        {\protect\addvspace{10\p@}} % to lists of figs & tables.
  289.    \if@twocolumn                   % Tests for two-column mode.  
  290.            \@topnewpage[\@makechapterhead{#2}]%
  291.      \else \@makechapterhead{#2}%
  292.            \@afterheading          % Routine called after chapter and
  293.      \fi}                          % section heading.
  294.  
  295. \def\@schapter#1{\if@twocolumn \@topnewpage[\@makeschapterhead{#1}]%
  296.         \else \@makeschapterhead{#1}%
  297.               \@afterheading\fi}
  298.  
  299. % \@startsection {NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE} 
  300. %            optional * [ALTHEADING]{HEADING}
  301. %    Generic command to start a section.  
  302. %    NAME       : e.g., 'subsection'
  303. %    LEVEL      : a number, denoting depth of section -- e.g.,
  304. %                 chapter=1, section = 2, etc.  A section number will be
  305. %                 printed if and only if LEVEL < or = the value of the
  306. %                 secnumdepth counter.
  307. %    INDENT     : Indentation of heading from left margin
  308. %    BEFORESKIP : Absolute value = skip to leave above the heading.  
  309. %                 If negative, then paragraph indent of text following 
  310. %                 heading is suppressed.
  311. %    AFTERSKIP  : if positive, then skip to leave below heading,
  312. %                       else - skip to leave to right of run-in heading.
  313. %    STYLE      : commands to set style
  314. %  If '*' missing, then increments the counter.  If it is present, then
  315. %  there should be no [ALTHEADING] argument.  A sectioning command
  316. %  is normally defined to \@startsection + its first six arguments.
  317.  
  318. \def\section{\@startsection {section}{1}{\z@}{-3.5ex plus-1ex minus
  319.     -.2ex}{2.3ex plus.2ex}{\reset@font\Large\bfseries}}
  320. \def\subsection{\@startsection{subsection}{2}{\z@}{-3.25ex plus-1ex
  321.     minus-.2ex}{1.5ex plus.2ex}{\reset@font\large\bfseries}}
  322. \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-3.25ex plus
  323.     -1ex minus-.2ex}{1.5ex plus.2ex}{\reset@font\normalsize\bfseries}}
  324. \def\paragraph{\@startsection
  325.     {paragraph}{4}{\z@}{3.25ex plus1ex minus.2ex}{-1em}{\reset@font
  326.     \normalsize \bfseries}}
  327. \def\subparagraph{\@startsection
  328.      {subparagraph}{4}{\parindent}{3.25ex plus1ex minus
  329.      .2ex}{-1em}{\reset@font\normalsize\bfseries}}
  330.  
  331.  
  332. % Default initializations of \...mark commands.  (See below for their
  333. % us in defining page styles.
  334. %
  335.  
  336. \def\chaptermark#1{}
  337. % \def\sectionmark#1{}           % Preloaded definitions
  338. % \def\subsectionmark#1{}
  339. % \def\subsubsectionmark#1{}
  340. % \def\paragraphmark#1{}
  341. % \def\subparagraphmark#1{}
  342.  
  343. % The value of the counter secnumdepth gives the depth of the
  344. % highest-level sectioning command that is to produce section numbers.
  345. %
  346.  
  347. \setcounter{secnumdepth}{2}
  348.  
  349. % APPENDIX
  350. %
  351. % The \appendix command must do the following:
  352. %    -- reset the chapter counter to zero
  353. %    -- set \@chapapp to Appendix (for messages)
  354. %    -- redefine the chapter counter to produce appendix numbers
  355. %    -- reset the section counter to zero
  356. %    -- redefine the \chapter command if appendix titles and headings
  357. %       are to look different from chapter titles and headings.
  358.  
  359. \def\appendix{\par
  360.   \setcounter{chapter}{0}%
  361.   \setcounter{section}{0}%
  362.   \def\@chapapp{\appendixname}%
  363.   \def\thechapter{\Alph{chapter}}}
  364.  
  365.  
  366. %    ****************************************
  367. %    *                LISTS                 *
  368. %    ****************************************
  369. %
  370.  
  371. % The following commands are used to set the default values for the list
  372. % environment's parameters. See the LaTeX manual for an explanation of
  373. % the meanings of the parameters.  Defaults for the list environment are
  374. % set as follows.  First, \rightmargin, \listparindent and \itemindent
  375. % are set to 0pt.  Then, for a Kth level list, the command \@listK is
  376. % called, where 'K' denotes 'i', 'ii', ... , 'vi'.  (I.e., \@listiii is
  377. % called for a third-level list.)  By convention, \@listK should set
  378. % \leftmargin to \leftmarginK.
  379. %
  380. % For efficiency, level-one list's values are defined at top level, and
  381. % \@listi is defined to set only \leftmargin.
  382.  
  383. \leftmargini 25pt
  384. \leftmarginii 22pt     % > \labelsep + width of '(m)'
  385. \leftmarginiii 18.7pt  % > \labelsep + width of 'vii.'
  386. \leftmarginiv 17pt     % > \labelsep + width of 'M.'
  387. \leftmarginv 10pt
  388. \leftmarginvi 10pt
  389.  
  390. \leftmargin\leftmargini
  391. \labelsep 5pt
  392. \labelwidth\leftmargini\advance\labelwidth-\labelsep
  393. %\parsep 4pt plus 2pt minus 1pt (Removed 9 Jun 87)
  394.  
  395. % \@listI defines top level and \@listi values of
  396. % \leftmargin, \topsep, \parsep, and \itemsep
  397. % (Added 9 Jun 87)
  398. \def\@listI{\leftmargin\leftmargini \parsep 4\p@ plus2\p@ minus\p@%
  399. \topsep 8\p@ plus2\p@ minus4\p@
  400. \itemsep 4\p@ plus2\p@ minus\p@}
  401.  
  402. \let\@listi\@listI
  403. \@listi 
  404.  
  405. \def\@listii{\leftmargin\leftmarginii
  406.    \labelwidth\leftmarginii\advance\labelwidth-\labelsep
  407.    \topsep 4\p@ plus2\p@ minus\p@
  408.    \parsep 2\p@ plus\p@ minus\p@
  409.    \itemsep \parsep}
  410.  
  411. \def\@listiii{\leftmargin\leftmarginiii
  412.     \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
  413.     \topsep 2\p@ plus\p@ minus\p@ 
  414.     \parsep \z@ \partopsep\p@ plus\z@ minus\p@
  415.     \itemsep \topsep}
  416.  
  417. \def\@listiv{\leftmargin\leftmarginiv
  418.      \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
  419.  
  420. \def\@listv{\leftmargin\leftmarginv
  421.      \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
  422.  
  423. \def\@listvi{\leftmargin\leftmarginvi
  424.      \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
  425.  
  426. \endinput
  427.